File System Tweaks - Disable Windows File Protection

Windows XP and 2000 include a feature called Windows File Protection (WFP), part of the System File Checker, which is intended to avoid some of the common DLL consistency issues. This feature may also block valid attempts to change system files and it can therefore be disabled using this tweak.

  1. Open the Registry Editor click on the Start button on your taskbar, then click on Run and type "regedit" and click on OK to start the regedit utility.
     
  2. Expand HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon (see picture 1).
     
    Picture 1
  3. Change the value of "SFCDisable" to equal "ffffff9d" to disable WFS or "0" to enable it. The other valid hexadecimal values are:

    1 - disabled, prompt at boot to re-enable

    2 - disabled at next boot only, no prompt to re-enable

    4 - enabled, with popups disabled

    ffffff9d - for completely disabled
     
  4. Restart Windows for the change to take effect.

Additional Steps for Windows 2000 Service Pack 2 and Windows XP
 

This setting is disabled in Windows 2000 SP2 and Windows XP, and needs to re-enabled using a hex editor and changing SFC.DLL (or SFC_OS.DLL for Windows XP) following these instructions:

Windows 2000 SP2

  1. Make a backup the SFC.DLL in the C:\WINNT\SYSTEM32 directory.
     
  2. Make an additional copy of SFC.DLL called SFC1.DLL and open it in a hex editor.
     
  3. At offset 00006211 (6211h) you should find the values "8B" and "C6". Do not continue if you are unable to find these values.
     
  4. Change the values "8B C6" to read "90 90" and save the changes.
     
  5. Run these commands to update the system files:
    copy c:\winnt\system32\sfc1.dll c:\winnt\system32\sfc.dll /y
    copy c:\winnt\system32\sfc1.dll c:\winnt\system32\dllcache\sfc.dll /y
    
  6. If you are prompted to insert the Windows CD, click Cancel.
     
  7. Restart Windows for the change to take effect.

Windows XP

  1. Make a backup the SFC_OS.DLL in the C:\WINDOWS\SYSTEM32 directory.
     
  2. Make an additional copy of SFC_OS.DLL called SFC_OS1.DLL and open it in a hex editor.
     
  3. Windows XP (no Service Pack)
    At offset 0000E2B8 (0E2B8h) you should find the values "8B" and "C6".

    Windows XP (Service Pack 1)
    At offset 0000E3BB (0E3BBh) you should find the values "8B" and "C6".
     
  4. Do not continue if you are unable to find these values.
     
  5. Change the values "8B C6" to read "90 90" and save the changes.
     
  6. Run these commands to update the system files:
    copy c:\windows\system32\sfc_os1.dll c:\windows\system32\sfc_os.dll /y
    copy c:\windows\system32\sfc_os1.dll c:\windows\system32\dllcache\sfc_os.dll /y
    
  7. If you are prompted to insert the Windows CD, click Cancel.
     
  8. Restart Windows for the change to take effect.

Once these files have been updated apply the registry setting above.

Note: You must manually modify the operating system files using a hex editor to allow this tweak to disable SFC on Windows 2000 (SP1+) or Windows XP.

 


Author:

Lex van der Horst

Date Added:

19-03-2004

Last Reviewed:

29-09-2004